Se specificato, il primo percorso � la directory mostrata nel pannello selezionato; il secondo � la directory mostrata nell'altro pannello.
Il Midnight Commander fornisce la vista di due directory contemporaneamente. Uno dei due pannelli � quello corrente (la barra di selezione � presente solo in questo). Quasi tutte le operazioni hanno luogo nel pannello corrente. Alcune azioni come Rinomina e Copia usano la directory del pannello non selezionato come valore predefinito di destinazione (ma si richiede sempre una conferma prima). Per informazioni aggiuntive, vedere le sezioni sui Pannelli Directory, i Menu Sinistro e Destro e Menu File.
E' possibile eseguire comandi di sistema dal Midnight Commander semplicemente battendoli. Ogni cosa scritta apparir� sulla linea di comando e quando si preme l'invio il Midnight Commander eseguir� la riga di comando appena battuta; leggere le sezioni Shell a Riga di Comando e Tasti di Ingresso per saperne di pi� sulla riga di comando.
Quando si fa click con il tasto sinistro in un file nel pannello directory, il file viene selezionato; se si fa click con il tasto destro il file viene marcato (o smarcato, a seconda dello stato precedente).
Se il file � un programma eseguibile, il doppio click su di esso lo eseguir� altrimenti se il file estensioni ha un programma specifico per quell'estensione del file, il suddetto programma verr� eseguito.
E' anche possibile eseguire i comandi assegnati ai tasti funzione cliccando sulle etichette dei tasti.
Se un tasto del mouse viene premuto sulla linea in cima al pannello directory il pannello sfoglia di una pagina in alto. Allo stesso modo, un click sulla riga in basso provocher� un cambio di pagina in basso. Questo metodo dei bordi funziona anche nel Visualizzatore dell'Aiuto e nell' Albero Directory.
L'auto ripetizione predefinita per il mouse � di 400 millisecondi. Questa pu� essere cambiata in valori differenti modificando il file ~/.mc/ini e cambiando il parametro mouse_repeat_rate.
Se il Commander sta funzionando con il supporto mouse, si pu� saltarlo ed ottenere il funzionamento del mouse normale (taglia e incolla di testo) tenendo premuto il tasto Maiuscolo.
Tutte le linee di ingresso nel Midnight Commander usano un'approssimazione dei tasti usati dall'editor GNU Emacs.
Ci sono molte sezioni che parlano dei tasti. Le seguenti sono le principali.
La sezione Menu File documenta le abbreviazioni di tasti per i comandi che appaiono nel menu File. Questa sezione include i tasti funzione. Molti di questi comandi lavorano sui file selezionati o sui marcati.
La sezione Pannelli Directory documenta i tasti che selezionano o marcano i file come oggetto per una seguente azione (l'azione normalmente deriva dal menu file).
La sezione Shell a Riga di Comando elenca i tasti utilizzati per immettere e modificare linee di comando. Molti di questi copiano nomi di file o altro dal pannello directory alla riga di comando (per evitare troppo lavoro di battitura) o per accedere allo storico comandi.
I Tasti Linea di Ingresso sono usati per modificare le linee di ingresso. Cio� sia la linea di comando che le linee di ingresso nelle finestre di interrogazione.
Se � stato compilato il supporto alla subsell, � possibile premere C-o in ogni momento per tornare alla schermata principale del Midnight Commander; per tornare all'applicazione basta premere C-o. Se si ha un'applicazione sospesa usando questo trucco, non si sar� in grado di eseguire altri programmi dal Midnight Commander finch� non si terminer� l'applicazione sospesa.
Diverse parti del Midnight Commander usano gli stessi tasti di movimento, questa sezione riguarda quelle parti.
In aggiunta a quelli menzionati sopra, il visualizzatore dell'aiuto accetta i seguenti tasti:
I Menu Sinistra e Destra permettono di modificare l'aspetto dei pannelli directory di sinistra e di destra.
Il Menu File elenca le azioni che possono essere condotte sui file correntemente selezionati o marcati.
Il Menu Comando elenca le azioni pi� generali e non ha relazione con il file correntemente selezionati o marcati.
Il Menu Opzioni elenca le azioni che permettono di personalizzare il Midnight Commander.
La modalit� breve mostra solo il nome del file in due colonne (perci� mostrando il doppio del numero dei file che nelle altre modalit�). La modalit� lunga � simile a quella del comando ls -l. La modalit� lunga usa tutta l'ampiezza dello schermo.
Se si sceglie il formato definibile dall'utente, � necessario specificare il formato della vista.
Il formato definibile dall'utente deve cominciare con una specifica dell'ampiezza del pannello. Questa pu� essere "half" o "full", che descrive un pannello di mezza grandezza o completa rispettivamente.
Dopo l'ampiezza del pannello, � possibile specificare la modalit� a due colonne aggiungendo il numero "2" alla stringa di formato.
Dopodich� si aggiunge il nome dei campi con una specifica di ampiezza opzionale. Questi sono i campi disponibile per la visualizzazione:
Puoi usare ache questi campi per sistemare la visualizzazione:
Per forzare un campo ad un'ampiezza fissa (una specifica di ampiezza), basta semplicemente aggiungere : ed il numero dei caratteri che si vuole che il campo abbia. Se il numero � seguito dal simbolo +, allora la specifica definisce l'ampiezza minima - se il programma trova che serve pi� spazio sullo schermo, espander� il campo.
Per esempio la modalit� Completa corrisponde a questo formato:
half type name | size | mtime
E quella Lunga corrisponde a questo formato:
full perm space nlink space owner space group space size space mtime space name
Questa � una modalit� interessante:
half name | size:7 | type mode:3
I pannelli possono anche essere impostati alle modalit� seguenti:
Normalmente le directory sono ordinare prima dei file ma quest'impostazione pu� essere modificata dal Menu Opzioni (opzione mescola tutti i file).
Il file menu comprende i comandi seguenti (tasti veloci tra parentesi):
Aiuto (F1)
Invoca il visualizzatore incorporato di ipertesti per l'aiuto. All'interno del visualizzatore aiuto, � possibile usare il tasto tab per selezionare il successivo collegamento e il tasto invio per seguirlo. I tasti Barra spaziatrice e Backspace vengono utilizzati per muoversi avanti e indietro nella pagina di aiuto. Premere F1 nuovamente per ottenere la lista completa dei tasti accettati.
Menu (F2)
Invoca il menu utente. Il menu utente fornisce un modo semplice per dare agli utenti un menu ed aggiungere nuove funzionalit� al Midnight Commander.
Visualizza (F3, Maiusc-F3)
Visualizza il file correntemente selezionato. Nell'ipostazione predefinita viene invocato il Visualizzatore Interno di File ma se l'opzione "Usa Visualizzatore interno" � deselezionata, verr� invocato un visualizzatore esterno specificato dalla variabile ambiente PAGER. Se PAGER non � definita, verr� invocato il comando "view". Se si usa invece il comando Maiusc-F3, il visualizzatore verr� invocato senza nessun tipo di formattazione o preprocessamento sul file.
Vista Filtrata (M-!)
Questo tasto richiede all'utente un comando ed i suoi argomenti (l'argomento predefinito � il nome del file attualmente selezionato), il risultato di tale comando viene mostrato nel visualizzatore di file interno.
Cambia (F4)
Invoca l'editor vi o l'editor specificato nella variabile d'ambiente EDITOR oppure l' Editor di File Interno se l'opzione, "Usa Editor interno" � stata impostata.
Copia (F5)
Mostra una finestra di dialogo con destinazione predefinita alla directory del pannello non selezionato, che copia il file selezionato (o i file marcati, se c'e n'� almeno uno) sulla directory specificata dall'utente nella finestra di dialogo. Durante il processo � possibile premere C-c o ESC per abortire l'operazione. Per maggiori dettagli sulla maschera sorgente (che sar� normalmente * o ^\(.*\)$ a seconda dell'impostazione di 'modelli della shell') o sui caratteri jolly sulla destinazione vedere Maschera copia/rinomina.
In alcuni sistemi � possibile eseguire la copia in background cliccando sul bottone background (o premendo M-b nella finestra di dialogo). Il comando Processi in background � utile per controllarne l'andamento.
Collegamento (C-x l)
Crea un collegamento fisico (hard link) al file corrente.
Collegamento Simbolico (C-x s)
Crea un collegamento simbolico al file corrente. Per chi non sapesse cosa sono i collegamenti: creare un collegamento ad un file � come copiare il file ma sia il nome sorgente che destinazione rappresentano la stessa immagine fisica del file. Per esempio, se si modifica uno dei due file, tutti i cambiamenti appariranno su tutti i file. Alcuni li chiamano anche alias o scorciatoie (o link come in originale inglese).
Un collegamento fisico appare come un file reale. Dopo che sia stato creato non c'� modo di distinguere quale sia il collegamento e quale sia l'originale. Se si cancella uno dei due l'altro rimarr� intatto. E' molto difficile notare che i file rappresentano la stessa immagine. Usate i collegamenti fisici quando non volete proprio saperlo.
Un collegamento simbolico � un riferimento al nome del file originale. Se il file originale viene cancellato, il collegamento � inutile. E' facile distinguere i collegamenti simbolici dall'immagine stessa. Se il file � un collegamento simbolico a qualcosa, il Midnight Commander mostra un simbolo "@" davanti al nome del file (eccetto se punta ad una directory, nel qualcaso mostrer� una tilde (~)). Il file originale sul quale punta il collegamento simbolico viene mostrato sulla riga di mini-stato se Mostra Mini-stato � abilitata. Usare i collegamenti simbolici se si vuole evitare la confusione che creano i collegamenti fisici.
Rinomina/Sposta (F6)
Mostra una finestra di dialogo con destinazione predefinita alla directory del pannello non selezionato, che sposta il file selezionato (o i file marcati, se c'e n'� almeno uno) sulla directory specificata dall'utente nella finestra di dialogo. Durante il processo � possibile premere C-c o ESC per abortire l'operazione. Per maggiori dettagli vedere la sezione precedente Copia, dato che il comando � molto simile.
In alcuni sistemi � possibile eseguire la copia in background cliccando sul bottone background (o premendo M-b nella finestra di dialogo). Il comando Processi in background � utile per controllarne l'andamento.
Crea Directory (F7)
Mostra una finestra di dialogo che crea la directory specificata.
Elimina (F8)
Cancella il file correntemente selezionato o i file marcati nel pannello corrente. Durante il processo � possibile premere C-c o ESC per abortire l'operazione.
Cambia Dir veloce (M-c) Usare il comando Cambia Dir veloce se si vuole cambiare directory corrente e si ha la riga di comando occupata.
Seleziona gruppo (+)
Viene utilizzato per selezionare (marcare) un gruppo di file. Il Midnight Commander richiedera un'espressione regolare per descrivere il gruppo; se l'opzione modelli della shell � abilitata, l'espressione regolare � simile al file globbing nella shell (* significa zero o pi� caratteri e ? significa un carattere). Se l'opzione modelli della shell � disabilitata, allora la selezione dei file viene eseguita con le normali espressioni regolari (vedere ed (1)).
Per selezionare directory invece di file, l'espressione deve cominciare o finire con una '/'.
De-seleziona gruppo (\\)
Usata per deselezionare un gruppo di file. E' l'opposto di del comando Seleziona gruppo.
Uscita (F10, Maiusc-F10)
Termina l'esecuzione del Midnight Commander. Maiusc-F10 viene usata se si esce e si sta usando lo shell wrapper. Maiusc-F10 in tal caso non vi porter� all'ultima directory utilizzata dal Midnight Commander ma vi lascer� nella directory dalla quale avete fatto partire il Midnight Commander.
Il comando Trova file permette di cercare un file specifico. Il comando "Scambia pannelli" scambia il contenuto dei due pannelli directory.
Il comando "Attiva/disattiva pannelli" mostra il risultato dell'ultimo comando shell. Quest'ultimo funziona solo su xterm e sulle console Linux e SCO.
Il comando Confronta directory (C-x d) confronta il contenuto dei pannelli directory uno con l'altro. E' poi possibile usare il comando Copia (F5) per rendere i pannelli identici. Ci sono tre metodi di confronto. Il metodo veloce confronta solo l'ampiezza e la data del file. Il metodo completo fa un confronto byte-per-byte. Il metodo completo non � disponibile se la macchina non supporta la chiamata di sistema mmap(2). Il metodo solo dimensione confronta solo l'ampiezza dei file e non controlla il contenuto ne la data del file.
Il comando Storico comandi mostra un'elenco dei comandi battuti. Il comando selezionato viene copiato sulla riga di comando. Allo storico comandi vi si pu� accedere premendo M-p o M-n.
Il comando Directory favorite (C-\) permette un cambio pi� veloce dalla directory corrente ad una di quelle usate pi� spesso.
Il comando Pannellizza comando permette di eseguire un coamndo esterno e di mettere il risultato nel pannello corrente.
Il comando Modifica file estensioni permette di specificare i programmi che devono essere eseguiti quando si prova ad eseguire, visualizzare, modificare e un mucchio di altre cose, file con una specifica estensione (la fine del nome del file). Il comando Modifica file menu serve a modificare il menu utente (che appare premendo F2).
Ci sono due modi di invocare l'albero. Il vero comando di albero directory � accessibile dal menu Comandi. L'altro modo � di selezionare la vista ad albero dai menu Sinistra o Destra.
Per evitare i lunghi ritardi il Midnight Commander crea la rappresentazione ad albero scansionando solo una piccola porzione di tutte le directory. Se manca la directory che si vuole visualizzare, spostarsi sulla sua directory genitrice e premere C-r (o F2).
E' possibile utilizzare i tasti seguenti:
Sono accettati i Tasti Generali di movimento.
Invio. Nell'albero directory, esce dall'albero della directory e lo cambia alla directory corrente nel pannello selezionato. Nella vista ad albero, cambia a questa directory nell'altro pannello e rimane nella modalit� vista ad albero in quello corrente.
C-r, F2 (Ricarica). Ricarica la directory. Usare questo comando quando la rappresentazione ad albero non � aggiornata: mancano directory o mostra alcune sottodirectory che non esistono pi�.
F3 (Scorda). Cancella questa directory dalla rappresentazione ad albero. Usare questo comando per eliminare la confusione dal'albero. Se si vuole nuovamente visualizzare l'albero completo premere F2 nella sua directory genitrice.
F4 (Statico/Dynamico). Cambia tra modo di navigazione dinamico (predefinito) e statico.
Nella navigazione statica si usano i tasti Su e Gi� per selezionare la directory. Tutte le directory conosciute vengono mostrate.
Nella navigazione dinamica si usano i tasti Su e Gi� per selezionare una directory sorella, il tasto Sinistra sposta sulla directory genitrice e il tasto Destra sposta sulla directory figlia. Solo i parenti, sorelle e figlie, vengono mostrate; le altre sono tralasciate. La rappresentazione ad albero cambia dinamicamente come la si attraversa.
F5 (Copia). Copia la directory.
F6 (RinSpo). Sposta la directory.
F7 (CreDir). Crea una nuova directory sotto questa directory.
F8 (CancDir). Cancella questa directory dal file system.
C-s, M-s. Cerca la prossima directory che corrisponde alla stringa di ricerca. Se tale directory non esiste, questi tasti faranno scendere di una riga (il cursore).
C-h, Backspace. Cancella l'ultimo carattere nella stringa di ricerca.
Qualsiasi altro carattere. Aggiunge un carattere alla stringa di ricerca e sposta alla nuova directory che comincia con questi caratteri (il cursore). Nella vista ad albero si deve prima attivare la ricerca premendo C-s. La stringa di ricerca � visibile nella riga di mini stato.
Le azioni seguenti sono disponibili solo nell'albero directory. Non sono supportate nella vista ad albero.
F1 (Aiuto). Invoca il visualizzatore dell'aiuto e mostra questa sezione.
Esc, F10. Esce dalla rappresentazione ad albero. Non cambia directory.
Il mouse � supportato. Un doppio click si comporta come premere Invio. Vedere anche la sezione supporto mouse.
Il campo contenuo accetta espressioni regolari simili a egrep(1). Ci� significa che � necessario proteggere i caratteri con significati speciali per egrep con "\", per esempio se si ricerca "strcmp (" si dovr� immettere "strcmp \(" (senza le virgolette).
Per far partire la ricerca premere il tasto Ok. E' possibile bloccare la ricerca con il tasto Sospende e farla riprendere con il tasto Continua.
E' possibile navigare l'elenco file con i tasti freccia Su e Giu. Il tasto Chdir cambier� la directory corrente a quella del file selezionato. Il tasto Ripete chieder� nuovamente i parametri per una nuova ricerca. Il tasto Uscita esce dal comando Trova. Il tasto Pannellizza metter� i file trovati sul pannello di directory corrente cosicch� si possa svolgere ulteriori operazioni su di essi (visualizzazione, copia, spostamento, e cos� via). Dopo la pannellizzazione � possibile premere C-r per ripristinare la vista normale dei file.
E' possibile avere una lista di directory che il comando Trova File dovrebbe saltare durante la ricerca (per esempio, si pu� evitare di fare ricerche su un CDROM o su una directory NFS montata attraverso un collegamento lento).
Le directory che devono essere saltate devono essere impostate nella variabile find_ignore_dirs nella sezione Misc del file ~/.mc/ini.
Le directory devono essere separate da una virgola, come nell'esempio:
[Misc] find_ignore_dirs=/cdrom:/nfs/wuarchive:/afs
Si pu� prendere in considerazione l'uso del comando Pannellizza comando per operazioni particolari. Il comando Trova file serve solo per ricerche semplici mentre usando Pannellizza comando si pu� fare ricerche complesse come si vuole.
Per esempio, se si vuole manipolare in uno dei pannelli tutti i collegamenti simbolici nella directory corrente, basta usare Pannellizza comando per eseguire il seguente:
find . -type l -print
Al completamento del comando, il contenuto del pannello non sar� pi� il listato della directory ma tutti i file che rappresentano collegamenti simbolici.
Volendo pannellizzare tutti i file che sono stati scaricati dal proprio server ftp preferito, si pu� usare questo comando awk per estrarre il nome del file dal file di log del traferimento:
awk '$9 ~! /incoming/ { print $9 }' < /usr/adm/xferlog
Se si desidera si pu� salvare i comandi di pannellizzazione usati pi� spesso con uno nome pi� descrittivo, in maniera da richiamarli pi� velocemente. Per fare ci� basta battere il comando sulla riga di ingresso e premere il tasto Aggiungi nuovo. Poi si deve dare un nome al quale associare il comando che si desidera salvare. La prossima volta sar� possibile scegliere quel comando dall'elenco e non servir� ribatterlo nuovamente.
Questo rende pi� veloce il cd verso directory usate spesso. Considera l'uso della variabile CDPATH come descritto in comando cd interno.
Tutte le righe che iniziano per # vengono ignorate.
Le righe che cominciano dalla prima colonna devono avere il seguente formato:
parolachiave/descrizione, i.e. qualsiasi cosa dopo parolachiave/ fino al fine riga � descrizione
parolachiave pu� essere:
Le altre linee devono cominciare con uno spazio o una tabulazione e devono essere nel formato: parolachiave=comando (senza spazi intorno a =), dove parolachiave deve essere: Open (se l'utente preme Invio o fa doppio click), View (F3), Edit (F4). command � qualsiasi comando shell di una riga, con la semplice sostituzione macro.
Gli obiettivi sono valutati dalla cima al fondo, perci� l'ordine � importante. Se alcune azioni mancano, la ricerca continua come se la regola non corrispondesse, cio� se un file corrisponde alla prima e alla seconda voce e manca la voce View in cima, allora premendo F3 verr� usata l'azione View della seconda voce. Normalmente dovrebbero corrispondere tutte le azioni.
Il formato del file menu � molto semplice. Le righe che cominciano con qualsiasi cosa che non sia uno spazio o una tabulazione sono considerate voci per il menu (per fare in modo di usarle anche come scelta rapida, il primo carattere deve essere una lettera). Tutte le righe che cominciano con uno spazio o un tab sono i comandi che verranno eseguiti quando la voce viene selezionata.
Quando un'opzione viene selezionata tutte le linee di comando dell'opzione vengono copiate in un file temporaneo nella directory temporanea (normalmente /usr/tmp) e poi il file viene eseguito. Ci� permette all'utente di mettere normali costrutti shell nei menu. Prima dell'esecuzione del codice del menu ha luogo una semplice sostituzione di macro. Per ulteriori informazioni vedere sostituzione macro.
Ecco un esempio di un file mc.menu:
A Mostra un dump del file correntemente selezionato od -c %f B Modifica un rapporto bachi e lo spedisce a root vi /tmp/mail.$$ mail -s "Midnight Commander bug" root < /tmp/mail.$$ M Legge la posta emacs -f rmail N Legge le news emacs -f gnus H Chiama il visualizzatore ipertestuale info info J Copia la directory corrente nell'altro pannello ricorsivamente tar cf - . | (cd %D && tar xvpf -) K Crea un rilascio della directory corrente echo -n "Nome del file di distribuzione: " read tar ln -s %d `dirname %d`/$tar cd .. tar cvhf ${tar}.tar $tar = f *.tar.gz | f *.tgz & t n X Estrae il contenuto di un file tar compresso tar xzvf %f
Condizioni Predefinite
Ogni voce di menu pu� essere preceduta da una condizione. La condizione deve cominciare nella prima colonna con un carattere '='. Se la condizione � vera, la voce di menu sar� la voce predefinita.
Sintassi condizione: = <sotto-cond> oppure: = <sotto-cond> | <sotto-cond> ... oppure: = <sotto-cond> & <sotto-cond> ... Sotto-condizione � una delle seguenti: y <modello> sintassi della corrispondenza modello file corrente? (solo per modifica menu). f <modello> corrispondenza modello file corrente? F <modello> corrispondenza modello altro file? d <modello> corrispondenza modello directory corrente? D <modello> corrispondenza modello altra directory? t <tipo> file corrente di tipo? T <tipo> altro file di tipo? x <nomefile> nomefile � eseguibile? ! <sotto-cond> nega il risultato di una sotto-condizione
Modello � un normale modello della shell o un'espressione regolare, a seconda dell'opzione modelli della shell. E' possibile scavalcare il valore globale dell'opzione modelli della shell scrivendo "shell_patterns=x" sulla prima riga del file menu (dove "x" � 0 o 1).
Tipo � uno o pi� dei seguenti caratteri: n non directory r file regolare d directory l collegamento c carattere speciale b blocco speciale f fifo (pipe) s socket x eseguibile t marcato
Per esempio 'rlf' significa file regolare, collegamento o fifo. Il tipo 't' � particolare perch� agisce sul pannello invece che sul file. La condizione '=t t' � vera se ci sono file marcati nel pannello corrente e falsa se non ce ne sono.
Se la condizione comincia con '=?' invece che '=' una traccia di debug sar� mostrata ogniqualvolta viene calcolato il valore della condizione.
Le condizioni sono calcolate da sinistra a destra. Ci� significa che
= f *.tar.gz | f *.tgz & t nviene calcolata come
( (f *.tar.gz) | (f *.tgz) ) & (t n)
Ecco un esempio dell'uso delle condizioni:
= f *.tar.gz | f *.tgz & t n L Elenca il contenuti di un archivio compresso tar gzip -cd %f | tar xvf -
Condizioni Addizione
Se la condizione comincia con '+' (o '+?') invece che '=' (o '=?') � una condizione addizione. Se la condizione � vera la voce di menu sar� inclusa nel menu. Se la condizione � falsa la voce di menu non sar� inclusa nel menu.
E' possibile combinare condizioni predefinite e addizione iniziando la condizione con '+=' o '=+' (o '+=?' o '=+?' se vuoi una traccia di debug). Se si vuole usare due differenti condizioni, una per addizionale e l'altra per predefinita, si pu� precedere una voce di menu con due righe di condizione, una che comincia con '+' e l'altra con '='.
I commenti cominciano con '#'. Linee di commento aggiuntive devono cominciare con
Il comando Configurazione mostra una finestra di dialogo dalla quale � possibile cambiare molte delle inpostazioni del Midnight Commander.
Il comando Aspetto mostra una finestra di dialogo con la quale � possibile impostare molte opzioni relative a come mc appare sullo schermo.
Il comando Conferme mostra una finestra di dialogo dalla quale � possibile specificare per quali azioni si vuole una richiesta di conferma.
Il comando Mostra bit mostra una finestra di dialogo dalla quale � possibile selezionare quali caratteri il vostro terminale � capace di mostrare.
Il comando Impara tasti mostra una finestra di dialogo dalla quale � possibile controllare i tasti che non appaiono funzionare su alcuni terminali ed � possibile aggiustare.
Il comando FS Virtuale mostra una finestra di dialogo con la quale � possibile impostare alcune opzioni relative al VFS.
Il comando Salva configurazione salva le impostazioni correnti dei menu Sinistra, Destra e Opzioni. Viene salvato anche un piccolo numero di altre opzioni.
Opzioni del pannello
mostra file di backup. Se abilitata, il Midnight Commander mostrer� i file che terminano con una tilde. Altrimenti essi non verranno mostrati (come nell'opzione -B del comando GNU ls).
Mostra file nascosti. Se abilitata, il Midnight Commander mostrer� tutti i file che cominciano con un punto (come ls -a).
cursore in basso mentre seleziona. Se abilitata, la barra di selezione si muover� in basso dopo aver selezionato un file (sia con C-t che con il tasto Ins).
Rilascia menu a cascata. Quando quest'opzione � abilitata, la discesa dei menu sar� attivata non appena si preme il tasto F9. Altrimenti si otterr� solo il titolo del menu e si dovr� attivare il menu con i tasti freccia o con i tasti di selezione rapida. E' raccomandata se si sta usando i tasti di selezione rapida.
Mescola tutti i file. Se quest'opzione � abilitata, tutti i file e directory vengono mostrati mescolati insieme, Se l'opzione � spenta, le directory (e i collegamenti a sotto.
Aggiornamento rapido directory. Se quest'opzione � abilitata, il Midnight Commander user� un trucco per determinare se i contenuti della directory sono cambiati. Il trucco consiste nel ricaricare la directory solo se l'i-node della directory � cambiato. Ci� significa che la ricarica accade solo quando i file vengono creati o cancellati. Se quello che cambia � l'i-node di un file nella directory (cambia l'ampiezza di un file, cambiano il proprietario o le flag, etc.) la visualizzazione non viene aggiornata. In questi casi se l'opzione � abilitata, � necessario ricaricare la directory manualmente (con C-r).
Pausa dopo l'esecuzione
Dopo l'esecuzione di comandi, il Midnight Commander pu� fermarsi, in maniera da permettere di esaminare il risultato del comando. Ci sono tre possibili impostazioni per questa variabile:
Altre opzioni
Operazioni prolisse. Quest'opzione decide se le operationi di Copia, Spostamento o Cancellazione saranno prolisse (cio� se mostreranno una finestra di dialogo per ogni operazione). Se si ha un terminale lento potresti voler disabilitare quest'opzione. Viene automaticamente spenta se la velocit� del proprio terminale � inferiore a 9600 bps.
Calcola totali. Se quest'opzione � abilitata, il Midnight Commander calcoler� i totali delle ampiezze in byte e il numero totale dei file prima di ogni operazione di Copia, Spostamento o Cancellazione. Questo generer� una barra di progressione pi� accurata a discapito di un po' di velocit�. Quest'opzione non ha effetto se Operazioni prolisse � disabilitata.
Modelli della shell. Normalmente i comandi Seleziona, De-seleziona e Filtro usano espressioni regolari di tipo shell. Le seguenti conversioni vengono eseguite per ottennere questo risultato: '*' viene rimpiazzato da '.*' (zero o pi� caratteri); '?' viene rimpiazzato da '.' (esattamente un carattere) e '.' dal carattere letterale punto. Se l'opzione � disabilitata, allora le espressioni regolari sono quelle descritte in ed(1).
Autosalva configurazione. Se quest'opzione � abilitata, quando si esce dal Midnight Commander le opzioni configurabili del Midnight Commander vengono salvate nel file ~/.mc/ini.
Menu automatici. Se quest'opzione � abilitata, il menu utente sar� invocato alla partenza. Utile per creare menu per utenti non abituati a unix.
Usa editor interno. Se quest'opzione � abilitata, verr� usato l'editor integrato interno per modificare i file. Se l'opzione � disabilitata, verr� usato l'editor specificato dalla variabile ambiente EDITOR. Se non nessun editor � specificato, verr� usato vi. Vedere la sezione editor di file interno.
Usa il visualizzatore interno. Se quest'opzione � abilitata, verr� usato il visualizzatore di file interno per visualizzare i file. Se l'opzione � disabilitata, verr� utilizzato il visualizzatore specificato dalla variabile ambiente PAGER. Se il visualizzatore non � definito, verr� usato il comando view. Vedere sezione visualizzatore file interno.
Completamento: visualizza tutto Normalmente il Midnight Commander mostra tutti i possibili completamenti se il completamento � ambiguo se si preme M-Tab una seconda volta, la prima completa per quanto possibile e, in caso di ambiguit�, emette un suono. Se si vuole vedere tutti i possibili completamenti gi� al pressione del primo M-Tab, abilitare quest'opzione.
Barre che girano. Se quest'opzione � abilitata, il Midnight Commander mostra una barra rotante nell'angolo in alto a destra come indicatore di progressione.
Navigazione stile Lynx. Se quest'opzione � abilitata, � possibile usare i tasti freccia per cambiare automaticamente directory se la selezione corrente � una subdirectory e se la riga di comando � vuota. Normalmente quest'opzione � spenta.
Cd segue i collegamenti. Quest'opzione, se impostata, fa in modo che il Midnight Commander segua la catena logica delle directory, quando si cambia la directory corrente in ogni pannello o usando il comando cd. Questo � il comportamento predefinito di bash. Quando non � impostata, il Midnight Commander segue la reale struttura della directory, perci� eseguendo cd .. se si � entrati in una directory attraverso un collegamento, ci porter� alla genitrice reale della directory corrente e non alla directory dov'era il collegamento.
Cancellazione sicura. Se quest'opzione � abilitata, la cancellazione non intenzionale dei file sar� pi� difficile. La preimpostazione della finestra di dialogo della conferma cambia da "Si" a "No". Normalmente quest'opzione � disabilitata.
Il resto dell'area dello schermo viene usata per i due pannelli directory. Si pu� specificare se l'area venga divisa dai due pannelli in direzione verticale o orizzontale. La divisione pu� essere uguale o si puo dividere in maniera asimmetrica.
Normalmente i contenuti dei pannelli directory sono visualizzati dello stesso colore, ma si pu� specificare se i permessi e i tipi di file siano evidenziati con speciali Colori. Se l'evidenziazione dei permessi � abilitata, i campi permessi e modalit� dello schermo valide per l'utente che usa il Midnight Commander sono evidenziati con il colore definito con la parolachiave selezionata. Se l'evidenziazione del tipo di file � abilitata, i file vengono colorati a seconda del tipo (per esempio directory, file core, eseguibili, ...).
Se l'opzione Mostra mini-stato � abilitata, una linea di informazioni di stato circa la voce correntemente selezionata viene mostrata sul fondo dei pannelli.
Ci si pu� muovere con il tasto Tab e con i tasti di movimento di vi ('h' sinistra, 'j' gi�, 'k' su e 'l' destra). Una volta premuti e riconosciuti i tasti di movimento del cursore, si possono tranquillamente utilizzare.
E' possibile provare i tasti semplicemente premendoli ogniuno. Quando si preme un tasto ed � riconosciuto correttamente, appare un OK accanto al nome di quel tasto. Una volta che il tasto � marcato OK, esso comincia a funzionare regolarmente, per esempio premendo il tasto F1, la prima volta controller� il funzionamento, ma dopodich� mostrer� la schermata di aiuto. Lo stesso dicasi per i tasti freccia. Il tasto Tab dovrebbe funzionare sempre.
Se alcuni tasti non funzionano correttamente, non si vedr� apparire l'OK dopo la pressione di quel tasto. Allora � possibile ridefinirlo. Fatelo, premendo il bottone corrispondente al nome del tasto (con il mouse o premendo Invio o Spazio, dopo aver selezionato il bottone con Tab o con le frecce). Ecco che un messaggio apparir� richiedendo di premere quel tasto. Fatelo ed aspettate che la finestra sparisca. Se si vuole annullare, basta premere Esc una volta ed aspettare.
Quando si � finito con tutti i tasti, � possibile salvarli. Le definizioni dei tasti che si � ridefinito saranno scritte nella sezione [terminal:TERM] del vostro ~/.mc/ini file (dove TERM � il nome del terminale corrente). Le definizioni dei tasti che gi� funzionavano correttamente non vengono salvate.
Il Midnight Commander tiene in memoria le informazioni relative ad alcuni dei file system virtuali per accelerare l'accesso all'elenco dei file nel file system (per esempio, l'elenco dei file scaricato dai server ftp).
Inoltre, per accedere al contenuto dei file compressi (per esempio file tar compressi) il Midnight Commander deve creare un file temporaneo non compresso sul disco.
Siccome sia le informazioni in memoria che i file temporanei su disco occupano risorse, si pu� voler impostare i parametri delle informazioni della cache per ridurre l'uso delle risorse o per massimizzare la velocit� di accesso ai file system usati spesso.
A causa del formato degli archivi tar, il filesystem tar necessita di leggere l'intero file solo per caricare le voci dei file. Dato che molti file tar sono compressi (i file tar non compressi sono una specie in via di estinzione), il file system tar deve decomprimere il file su disco, in una locazione temporanea per poi accedervi come un file tar normale.
Ora, visto che noi tutti amiamo navigare nei file e nei file tar dappertutto su disco, succede spesso che si lascia un file tar per poi rientrarvi successivamente. Siccome la decompressione � lenta, il Midnight Commander conserver� l'informazione in memoria per un tempo limitato, allo scadere del quale, tutte le risorse associate al file system verranno liberate. La scadenza predefinita � impostata a un minuto.
Il File System FTP (ftpfs) permette di navigare le directory su server FTP remoti. Esso possiede diverse opzioni.
Password ftp anonimo � la password utilizzata per accedere come "anonimo". Alcuni siti richiedono un indirizzo email valido. Daltra parte, probabilmente non si vuole dare il vostro indirizzo email reale a siti non di fiducia, specialmente se non si sta usando filtri anti spam.
L'ftpfs mantiene l'elenco della directory che scarica dal server ftp in una cache. Il tempo di scadenza della cache � configurabile con l'opzione scadenza cache directory ftpfs. Un valore basso per quest'opzione pu� rallentare ogni operazione sul file system ftp perch� ogni operazione � accompagnata da una richiesta al server ftp.
E' possibile definire un host proxy per fare trasferimenti ftp. Notare che molti firewall moderni sono totalmente trasparenti almeno per i trasferimenti FTP passivi (vedere di seguito), perci� i proxy ftp sono considerati obsoleti.
Se usa sempre ftp proxy non � impostata, � possibile usare il punto escamativo per abilitare il proxy per certi host. Vedere la sezione File System FTP per gli esempi.
Se quest'opzione � impostata, il programma far� due cose: consulter� il file /gg/lib/mc/mc.no_proxy per le righe contenenti nomi host locali (se il nome host comincia con un punto, � considerato un dominio) e assumendo che ogni nome host senza punti nel nome sia direttamente accessibile. Tutti gli altri host verranno contattati attraverso il proxy host specificato.
E' possibile abilitare l'uso del file ~/.netrc che mantiene i nomi di accesso e le password per i server ftp. Vedere netrc (5) per una descrizione del formato .netrc.
Usa modalit� passiva abilita l'uso della modalit� FTP passiva quando la connessione per il trasferimento file � iniziata dal client, non dal server. Quest'opzione � raccomandata e preimpostata. Se quest'opzione � spenta, la connessione dati viene iniziata dal server. Questo potrebbe non funzionare con alcuni firewall.
Il comando Salva configurazione crea il file ~/.mc/ini salvando le impostazioni correnti dei menu Sinistra, Destra e Opzioni.
Se si attiva l'opzione autosalva configurazione , MC salver� sempre le impostazioni correnti all'uscita.
Esistono anche impostazioni che non possono essere cambiate dai menu. Per cambiare queste impostazioni � necessario modificare il file di configurazione con il vostro editor preferito. Vedere sezione Impostazioni speciali per ulteriori informazioni.
Se si preme Invio su di un file che non � eseguibile, il Midnight Commander confronta l'estensione del file selezionato con ci� che trova nel File Estensioni. Se viene trovata una corrispondenza, verr� eseguito il codice associato. Verr� eseguita una semplice espansione di macro prima di eseguire il comando.
Sostituzione della tilde. La (~) verr� sostituita con la vostra directory home e se si appende un nome utente dopo la tilde, allora verr� sostituita con la directory di login dell'utente indicato.
Per esempio, ~ospite � la directory home dell'utente ospite, mentre ~/ospite � la directory ospite nella vostra home directory.
Directory precedente. E' possibile saltare alla directory dove si era precedentemente usando il nome directory speciale '-' cos�: cd -
Directory CDPATH. Se la directory indicata al comando cd non � nella directory corrente, il Midnight Commander user� il valore della viariabile ambiente CDPATH per cercare la directory in ogniuna delle directory nominate.
Per esempio si pu� impostare la variabile CDPATH a ~/src:/usr/src, permettendo di cambiare directory verso ogniuna delle directory presenti nelle directory ~/src e /usr/src da qualunque parte nel file system (per esempio cd linux vi porter� in /usr/src/linux).
Le macro sono:
Quando il codice di subshell � attivato il Midnight Commander generer� un processo copia concorrente della shell (quella definita dalla variabile SHELL e se non � definita, prender� quella presente nel file /etc/passwd) e lo eseguir� in un pseudo terminale; invece di invocare una nuova shell ogniqualvolta si esegue un comando, il comando verr� passato alla subshell come se lo si avesse battuto personalmente. Questo permette di cambiare le variabili di ambiente, usare funzioni della shell e definire alias che rimangono validi fintanto che non si esca dal Midnight Commander.
Se si sta usando bash si pu� specificare comandi alla partenza della subshell nel file ~/.mc/bashrc e mappature speciali della tastiera nel file ~/.mc/inputrc. tcsh gli utenti possono specificare comandi alla partenza nel file ~/.mc/tcshrc.
Quando il codice della subshell viene utilizzato, si pu� sospendere l'applicazione in ogni momento con la sequenza C-o e saltare nuovamente al Midnight Commander; se si interrompe un'applicazione, non si sar� in grado di eseguire altri comandi esterni finch� non si esce dall'applicazione interrotta.
Una caratteristica aggiuntiva dell'usare la subshell � data dal fatto che il prompt mostrato dal Midnight Commander sar� lo stesso di quello utilizzato dalla shell.
La sezione OPZIONI contiene informazioni aggiuntive riguardo come controllare il codice della subshell.
La finestra dei Permessi ha due parti - Permessi e File.
Nella sezione File somo mostrati il nome del file o della directory ed i suoi permessi in forma ottale, oltre che il proprietario e il gruppo.
Nella sezione Permessi c'� un set di caselle che corrispondono agli attributi dei file. Come si cambia il bit di attributo, si pu� vedere il valore in ottale aggiornato nella sezione File.
Per muoversi attraverso le sezioni (bottoni e caselle) usare i tasti freccia oppure Tab. Per cambiare lo stato delle caselle o per selezionare un bottone usare lo Spazio. Si pu� usare anche i tasti di scelta rapida sui bottoni per attivarli velocemente. I tasti di scelta rapida corrispondono alle lettere evidenziate dei bottoni.
Per impostare i bit degli attributi, usare il tasto Invio.
Quando si lavora con un gruppo di file o directory, basta cliccare sui bit che si vogliono impostare o cancellare. Una volta selezionati i bit da cambiare, selezionare una delle azioni (Imposta marcati o Cancella marcati).
Infine, per impostare gli attributi esattamente come specificato, usare il tasto [Imposta tutti], che agisce su tutti i file marcati.
[Modifica tutti] modifica solo gli attributi marcati su tutti i file.
[Imposta marcati] pone a uno i bit marcati degli attributi di tutti i file selezionati.
[Cancella marcati] pone a zero i bit marcati degli attributi di tutti i file selezionati.
[Imposta] imposta gli attributi di un file.
[Cancella] cancella il comando Permessi.
Ci sono due bottoni sul fondo della finestra di dialogo. Premendo il tasto Salta si salter� il resto del file. Premendo il tasto Esci si bloccher� tutta l'operazione ed il resto dei file saranno ignorati.
Ci sono tre altre finestre di dialogo che si possono incontrare durante le operazioni sui file.
La finestra di dialogo di errore informa circa le condizioni di errore ed ha tre scelte. Normalmente si seleziona il tasto Salta per saltare il file o Esci per bloccare l'operazione. E' possibile anche selezionare il tasto Riprova se nel frattempo si ha risolto il problema da un'altro terminale.
La finestra di dialogo di rimpiazzo viene mostrata quando si tenta di copiare o spostare un file sopra un file esistente. La finestra mostra la data e la dimensione di tutti e due i file. Premere il tasto Si per rimpiazzare il file, No per saltare il file, Tutti per sovrascrivere tutti i file, Nessuno per non sovrascriverli mai e Aggiorna per sovrascriverli solo se il file sorgente � pi� recente del file di destinazione. E' possibile bloccare l'intera operazione premendo il tasto Esci.
La finestra di dialogo della cancellazione ricorsiva appare quando si tenta di cancellare una directory che non � vuota. Premere il tasto Si per cancellare la directory ricorsivamente o No per saltare la directory, il tasto Tutto per cancellare tutte le directory non vuote e Nessuno per saltare tutte le directory non vuote. Per fermare l'intera operazione premere il tasto Esci. Se si seleziona il tasto Si o Tutto verr� richiesta una conferma. Premere "si" solo se si � veramente sicuri di voler fare una cancellazione ricorsiva.
Se si hanno dei file marcati e si esegue un'operazione su di essi, solo i file sui quali l'operazione ha avuto successo verranno deselezionati. I file su cui � fallita l'operazione o che sono stati saltati vengono lasciati marcati.
Queste le opzioni che possono essere impostate:
Segue i collegamenti, specifica se creare i collegamenti simbolici o no (hard link), presenti nella directory sorgente (e ricorsivamente nelle sue sotto directory) come nuovi collegamenti oppure se invece si desidera che venga copiato il loro contenuto.
In una sottodir se esiste gi�, specifica cosa fare se nella directory obiettivo esiste una directory con lo stesso nome del file/directory in copia. L'azione predefinita � di copiare il suo contenuto in quella directory, ma selezionando quest'opzione si pu� copiare la directory sorgente in questa directory. Forse un esempio aiuter�:
Si vuole copiare il contenuto di una directory pallo su /pinco/pallo, che � una directory che esiste gi�. Normalmente (quando l'opzione non � impostata), mc farebbe la copia in /pinco/pallo. Abilitando quest'opzione verr� eseguita la copia in /pinco/pallo/pallo, perch� la directory esiste gi�.
Mantiene gli attributi, specifica se si vuole preservare i permessi originali del file, le date e se si � l'utente root, gli attributi UID e GID. Se quest'opzione non � impostata verr� rispettato il valore corrente di umask.
Usa i modelli della shell, opzione abilitata
Quando l'opzione dei modelli della shell � abilitata � possibile usare i caratteri jolly '*' e '?' nella maschera sorgente. Questi lavorano come nella shell. Nella maschera obbiettivo sono permessi solo i caratteri jolly '*' e '\<cifra>'. Il primo carattere jolly '*' nella maschera obbiettivo corrisponde al primo gruppo di caratteri jolly nella maschera sorgente, il secondo '*' al secondo gruppo e cos� via. Il carattere jolly '\1' corrisponde al primo gruppo di caratteri jolly nella maschera sorgente, '\2' corrisponde al secondo gruppo e cos� via fino al '\9'. Il carattere jolly '\0' rappresenta tutto il nome del file sorgente.
Due esempi:
Se la maschera sorgente � "*.tar.gz", la destinazione � "/bla/*.tgz" e il file da copiare � "foo.tar.gz", la copia sar� "foo.tgz" in "/bla".
Supponiamo si voglia scambiare la base e l'estensione di un file cosicch� "file.c" divenga "c.file" e cos� via. La maschera sorgente per questa operazione sar� "*.*" e la destinazione sar� "\2.\1".
Usa i modelli della shell, opzione disabilitata
Quando l'opzione dei modelli della shell � disabilitata, MC non esegue pi� il raggruppamento automatico. E' necessario usare espressioni tipo '\(...\)' nella maschera sorgente per dare significato ai caratteri jolly nella maschera obbiettivo. Altrimenti le maschere obbiettivo si trovano nella situazione di quando i modelli della shell sono abilitati.
Due esempi:
Se la maschera sorgente � "^\(.*\)\.tar\.gz$", la destinazione � "/bla/*.tgz" e il file da copiare � "foo.tar.gz", la copia sar� "/bla/foo.tgz".
Supponiamo si voglio scambiare la base e l'estensione di un file cosicch� "file.c" divenga "c.file" e cos� via. La maschera sorgente per questa operazione sar� "^\(.*\)\.\(.*\)$" e la destinazione sar� "\2.\1".
Conversioni Maiuscole/Minuscole
E' anche possibile cambiare tra maiuscole e minuscole i caratteri dei file. Se si usa '\u' o '\l' nella maschera obbiettivo, il carattere successivo sar� convertito rispettivamente in maiuscolo o minuscolo.
Se si usa '\U' o '\L' nella maschera obbiettivo, il caratteri successivi saranno convertiti rispettivamente in maiuscolo o minuscolo fino alla prossima corrispondenza di '\E' o '\U', '\L' o alla fine del nome del file.
Notare che '\u' e '\l' sono pi� forti di '\U' e '\L'.
Per esempio, se la maschera sorgente � '*' (modelli della shell abilitati) o '^\(.*\)$' (modelli della shell disabilitati) e la maschera obbiettivo � '\L\u*' i nomi dei file saranno convertiti ad avere maiuscola iniziale ed il resto minuscolo.
Si pu� usare '\' come carattere di protezione. Per esempio, '\\' � una barra retroversa e '\*' � un asterisco.
Il visualizzatore tenter� di usare il metodo migliore fornito dal sistema o a seconda del tipo di file, per mostrare le informazioni. Il visualizzatore interno interpreter� alcune sequenze di stringa per impostare gli attributi di grassetto e sottolineato, per mostrare al meglio i file.
In modalit� esadecimale, la funzione di ricerca accetta testo protetto e costanti numeriche. Il testo protetto viene confrontato esattamente dopo la rimozione della protezione. Ogni numero rappresenta un byte. E' possibile mescolare testo protetto con costanti come nell'esempio:
"Stringa" -1 0xBB 012 "ancora testo"
Notare che 012 � un numero ottale. -1 viene convertito in 0xFF.
Alcuni dettagli interni circa il visualizzatore: su sistemi che forniscono la chiamata di sistema mmap(2), il programma mappa il file invece di caricarlo; se il sistema non fornisce la chiamata di sistema mmap(2) o il file corrisponde ad un'azione che abbisogna di un filtro, allora il visualizzatore user� i buffer di accrescimanto (growing), caricando perci� solo le parti del file su cui vi si accede (inclusi i file compressi).
Ecco un'elenco di azioni associate ad ogni tasto che il Midnight Commander gestisce nel visualizzatore di file interno.
F1 Invoca il visualizzatore ipertestuale dell'aiuto.
F2 Abilita/disabilita la funzione di a capo automatico.
F4 Abilita/disabilita la modalit� esadecimale.
F5 Vai alla linea. Questo comando richieder� un numero di linea e mostrer� quella linea.
F6, /. Ricerca tramite espressione regolare.
?, Ricerca in ordine inverso, tramite espressione regolare.
F7 Ricerca normale / ricerca in modalit� esadecimale.
C-s, F17, n. Inizia una ricerca normale, se non c'era gi� un'espressione di ricerca, altrimenti trova la prossima occorrenza.
C-r. Inizia una ricerca normale in ordine inverso, se non c'era gi� un'espressione di ricerca, altrimenti trova la prossima occorrenza.
F8 Cambia tra modalit� Normale/Filtrata: questo mostrer� il file come si trova su disco o se � stato specificato un filtro nel file mc.ext, come esce dal filtro. La modalit� corrente � sempre quella diversa da quella mostrata dall'etichetta del tasto, dato che il bottone rappresenta la modalit� nella quale si entra premendolo.
F9 Cambia tra modalit� non formattata e formattata: quando la modalit� � formattata, il visualizzatore interpreter� alcune sequenze di stringa per rappresentare il grassetto e il sottolineato con colori diversi. Anche per questa funzione, l'etichetta sul tasto rappresenta la modalit� non corrente.
F10, Esc. Esce dal visualizzatore di file interno.
pagina-gi�, spazio, C-v. Sfoglia di una pagina in avanti.
pagina-s�, M-v, C-b, backspace. Sfoglia di una pagina indietro.
freccia-in-basso Si sposta di una riga in avanti.
up-key Si sposta di una riga indietro.
C-l Ridisegna lo schermo.
C-o Passa alla subshell e mostra la schermata dei comandi.
! Come C-o, ma esegue una nuova shell se la subshell non sta andando.
[n] m Imposta l'indice n.
[n] r Salta all' indice n.
C-f Salta al file successivo.
C-b Salta al file precedente.
M-r Abilita/disabilita il righello.
E' anche possibile istruire il visualizzatore su come mostrare un file, vedere la sezione Editor File Estensioni.
Le funzioni che allo stato attuale supporta sono: copia, spostamento, cancellazione, taglia e incolla di blocchi; tasto per l'annullamento; menu a discesa, inserimento file, definizione di macro, ricerca e sostituzione di espressioni regolari (e una propria ricerca e sostituzione a scanf e printf); evidenziazione di testo maiuscolo-freccia MSW-MAC (solo per la console Linux); scambio tra inserimento-rimpiazzo e un'opzionale flusso di blocchi di testo attraverso comandi shell come indent.
L'editor � molto semplice da usare e non richiede apprendimento. Per vedere cosa fanno i tasti, basta consultare il menu a discesa appropriato. Gli altri tasti sono: maiusc + tasti freccia produce la selezione del testo. Ctrl-Ins copia nel file cooledit.clip e Shift-Ins incolla da cooledit.clip. Shift-Del taglia in cooledit.clip, e Ctrl-Del cancella il testo selezionato. Funziona anche l'evidenziazione con il mouse che, come al solito, si pu� utilizzare come in un normale terminale, premendo contemporaneamente il tasto Maiuscolo mentre si clicca trascinando con il mouse.
Per definire una macro, premere Ctrl-R poi premere i tasti che si voglia essere eseguiti. Premere nuovamente Ctrl-R quando si ha finito. E' possibile assegnare una macro a qualsiasi tasto si preme. La macro viene eseguita quando si preme Ctrl-A e poi il tasto assegnato. La macro viene eseguita anche se si preme il tasto Meta, Ctrl, o Esc e il tasto assegnato, basta che il tasto non sia gi� assegnato a qualche altra funzione. Una volta definiti, i macro comandi finiscono nel file .mc/cedit/cooledit.macros nella propria directory home. E' possibile cancellare una macro cancellando la riga appropriata nel suddetto file.
F19 formatter� il blocco evidenziato correntemente (testo, codice C o C++ o altro). Questo comportamento viene controllato dal file /gg/share/mc/edit.indent.rc che viene copiato nel .mc/cedit/edit.indent.rc nella propria directory home la prima volta che lo si usa.
E' possibile usare la ricerca e sostituzione scanf per cercare e rimpiazzare una stringa in formato C. Prego vedere le pagine man di sscanf e sprintf per vedere cos'� una stringa di formato e come funziona. Il seguente � un esempio: supponiamo di voler sostituire tutte le ricorrenze di, poniamo, una parentesi aperta, tre numeri separati da virgole, una parentesi chiusa, con la parola mele, il terzo numero, la parola arance ed il secondo numero, si dovrebbe riempire la finestra di sostituzione nella maniera seguente:
Immettere stringa di ricerca (%d,%d,%d) Immettere stringa di sostituzione mele %d arance %d Ordine di sostituzione degli argomenti 3,2
L'ultima riga specifica che il terzo ed il secondo numero devono essere usati al posto del primo e del secondo.
E' consigliabile usare questa caratteristica con l'opzione 'Chiedi sempre' abilitata, dato che una corrispondenza viene considerata valida quando il numero degli argomenti dati corrisponde al numero dato, che non � sempre una reale corrispondenza. Scanf tratta anche gli spazi come elastici. Notare che il formato % � molto utile per scansionare stringhe, e spazi.
L'editor visualizza snche caratteri non-americani (160+). Quando si modifica file binari, si dovrebbe impostare mostra bit a 7 bit nel menu opzioni, per mantenere la spaziatura pulita.
Tentativi per eseguire un completamento del testo prima della posizione corrente. MC tenta il completamento trattando il testo come una variabile (se il testo comincia con $), nomeutente (se il testo comincia con ~), nomehost (se il testo comincia con @) o comando (se si � sulla riga di comando nell'atto di battere un comando, allora possibili completamenti includerebbero parole riservate e comandi integrati della shell). Se nessuno di questi produce una corrispondenza, viene tentato un completamento del nome del file.
Completamenti di nomefile, nomeutente, variabili e nomehost funzionano su tutte le righe di ingresso, il completamento dei comandi invece � specifico della riga di comando. Se il completamento � ambiguo (ci sono pi� possibilit� differenti), MC emette un suono e l'azione seguente dipender� a seconda delle impostazioni dell'opzione Completamento: visualizza tutto nella finestra Configurazione. Se � abilitata, un elenco di tutte le possibilit� viene mostrato vicino alla posizione corrente per poter selezionare con i tasti freccia e Invio la voce corretta. Si pu� anche battere le prime lettere nelle quali le varie possibilit� differiscono per muoversi in un sottoinsieme di tutte le possibilit� e completare il pi� possibile. Se si preme nuovamente M-Tab, verr� mostrato solo il sottoinsieme nella finestra dell'elenco, altrimenti la prima voce che corrisponde a tutti i caratteri precedenti verr� evidenziata. Non appena non c'� pi� ambiguit�, la finestra scompare, ma la si pu� nascondere con i tasti di cancellamento Esc, F10 e i tasti di freccia sinistra e destra. Se Completamento: visualizza tutto � disabilitato, la finestra viene mostrata solo se si preme M-Tab una seconda volta; la prima volta MC emette solo un suono.
Attualmente il Midnight Commander viene confezionato con alcuni File System Virtuali (VFS): il file system locale, usato per accedere al normale file system Unix; l' ftpfs, usato per manipolare file su sistemi remoti con il protocollo FTP; il tarfs, usato per manipolare file tar e file tar compressi; l'undelfs, usato per recuperare file cancellati su file system di tipo ext2 (il file system predefinito per sistemi Unix), fish (per manipolare file su connessioni shell come rsh e ssh) e per ultimo l'mcfs (file system del Midnight Commander), un file system basato sulla rete. Se il codice � stato compilato con il supporto smbfs, � possibile manipolare file su file system remoti con il protocollo SMB (CIFS).
Il codice di commutazione di file system interpreta tutti i nomi di percorso utilizzati e li dirige al file system corretto; il formato utilizzato per ogniuno di questi file system viene descritto pi� avanti nella sezioni apposite.
/#ftp:[!][utente[:pass]@]macchina[:porta][dir-remota]
Gli elementi utente, porta e dir-remota sono opzionali. Se si specifica l'elemento utente, allora il Midnight Commander tenter� di collegarsi alla macchina remota come quell'utente, altrimenti user� il vostro nome di login o il nome di login prelevato dal file ~/.netrc. L'elemento opzionale pass � la parola d'ordine per la connessione. L'uso della password nel nome VFS della directory non � raccomandabile, dato che pu� apparire sullo schermo in chiaro e pu� essere salvato nello storico directory.
Per abilitare l'uso del proxy FTP, anteporre ! (un punto esclamativo) al nome host.
Esempi:
/#ftp:ftp.nuclecu.unam.mx/linux/local /#ftp:tsx-11.mit.edu/pub/linux/packages /#ftp:!dietro.il.firewall.edu/pub /#ftp:guest@host-remoto.com:40/pub /#ftp:miguel:xxx@server/pub
Prego controllare la finestra di dialogo File System Virtuale per le opzioni ftpfs.
/nomefile.tar#utar/[dir-dentro-tar]
Il file mc.ext gi� fornisce un collegamento per il file tar; ci� significa che normalmente basta selezionare un file tar e premere invio per entrare nel file tar, vedere la sezione Editor File Estensioni per i dettagli su come questo viene fatto.
Esempi:
mc-3.0.tar.gz#utar/mc-3.0/vfs /ftp/GCC/gcc-2.7.0.tar#utar
L'ultima riga, specifica il percorso completo dell'archivio tar.
Per collegarsi ad una macchina remota, basta solo fare cd in una speciale directory il cui nome ha il seguente formato:
/#sh:[utente@]macchina[:opzioni]/[dir-remota]Gli elementi utente, opzioni e dir-remota sono opzionali. Se si specifica l'elemento utente alloral il Midnight Commander tenter� di connettersi alla macchina remota con quell'utente, altrimenti user� il nome di login.
Le opzioni sono 'C' - usa la compressione e 'rsh' per usare rsh invece di ssh. Se l'elemento dir-remota � presente, la directory corrente sulla macchina remota sar� impostatata a questo valore.
Esempi:
/#sh:solorsh.mx:r/linux/locale /#sh:joe@vuole.lacompressione.edu:C/privato /#sh:joe@noncompresso.ssh.edu/privato
Per connettersi ad una macchina remota, basta solo fare cd in una speciale directory il cui nome ha il seguente formato:
/#mc:[utente@]macchina[:porta][dir-remota]
Gli elementi utente, porta e dir-remota sono opzionali. Se si specifica l'elemento utente alloral il Midnight Commander tenter� di connettersi alla macchina remota con quell'utente, altrimenti user� il nome di login.
L'elemento porta viene usato quando la macchina remota usa una porta speciale; (vedere la magina man mcserv(8) per ulteriori informazioni sulle porte); infine se l'elemento dir-remota � presente, la directory corrente sulla macchina remota sar� impostatata a questo valore.
Esempi:
/#mc:ftp.nuclecu.unam.mx/linux/locale /#mc:joe@foo.edu:11321/privato
Per usare questo file system, � necessario entrare nella directory con il nome speciale formato dal prefisso "/#undel" e dal nome del file system dove il file risiede.
Per esempio, per recuperare file cancellati sulla seconda partizione del primo disco SCSI su Linux, si dovr� usare il seguente percorso:
/#undel:sda2
Il recupero pu� metterci un po' di tempo per caricare le informazioni necessarie per poter cominciare a navigare attraverso i file.
/#smb:[utente@]macchina[/servizio][/dir-remota]
L'elemento utente, servizio e dir-remota sono opzionali. Il nome utente, dominio e la password possono essere specificati nella finestra di dialogo di ingresso.
Esempi:
/#smb:macchina/Condivisione /#smb:altra_macchina /#smb:guest@macchina/Public/Irlex
Se il programma � compilato con il manager dello schermo Slang invece che ncurses, controller� se � impostata anche la variabile COLORTERM, con lo stesso effetto dell'opzione -c.
E' possibile specificare i terminali su cui si vuole forzare sempre la modalit� colore aggiungendo la variabile color_terminals nella sezione Color del file di inizializzazione. Questo previene il Midnight Commander dal tentare di controllare se il terminale supporta i colori. Per esempio:
[Colors] color_terminals=linux,xterm
color_terminals=nome_terminale-1,nome-terminale-2...
Il programma pu� essere compilato sia con il supporto di ncurses che di slang ma ncurses non fornisce alcun modo per forzare la modalit� colore: ncurses user� solo le informazioni nel database dei terminali.
Il Midnight Commander fornisce un modo per cambiare i colori predefiniti. Attualmente i colori sono configurati usando la variabile ambiente MC_COLOR_TABLE o la sezione Color nel file di inizializzazione.
Nella sezione Color, la mappa dei colori predefinita viene caricata dalla variabile base_color. Si pu� specificare una mappa colori alternativa per un terminale usando il nome del terminale come chiave nella sezione. Esempio:
[Colors] base_color= xterm=menu=magenta:marked=,magenta:markselect=,red
Il formato della definizione dei colori �:
<parolachiave>=<coloreprimopiano>,<coloresfondo>:<parolachiave>= ...
I colori sono opzionali e le parolechiave sono: normal, selected, marked, markselect, errors, input, reverse, gauge. I colori dei menu sono: menu, menusel, menuhot, menuhotsel. I colori delle finestre di dialogo sono: dnormal, dfocus, dhotnormal, dhotfocus. I colori dell'aiuto sono: helpnormal, helpitalic, helpbold, helplink, helpslink. Il colore del visualizzatore �: viewunderline. Colori speciali di evidenziazione: executable, directory, link, device, special, core. I colori dell'editor sono: editnormal, editbold, editmarked.
input determina il colore delle righe di input usate delle finestre di dialogo.
gauge determina il colore della parte riempita della barra di progressione (gauge), che mostra quanta percentuale del file � stata copiata o altro in forma grafica.
Le finestre di dialogo usano i colori seguenti: dnormal usata per il testo normale, dfocus � il colore usato per il componente correntemente selezionato, dhotnormal � il colore usato per differenziare il tasto di scelta rapida nei componenti normali, mentre il colore dhotfocus viene usato per il colore evidenziato nel componente correntemente selezionato.
I menu usano lo stesso schema ma usano invece i selettori menu, menusel, menuhot e menuhotsel.
L'aiuto usa i seguenti colori: helpnormal viene usato per il testo normale, helpitalic viene usato per il testo enfatizzato con il corsivo nelle pagine del manuale, helpbold viene usato per il testo enfatizzato con il grassetto nelle pagine del manuale, helplink viene usato per un collegamento non selezionato e helpslink viene usato per un collegamento selezionato.
I colori speciali di evidenziazione determinano come i file vengono visualizzati quando l'evidenziazione dei file � abilitata (vedere sezione Aspetto). directory usata per directory o collegamenti simbolici a directory; executable per il file eseguibili; link viene usata per i collegamenti simbolici che non sono n� interrotti n� connessi a directory; stalelink usata per collegamenti simbolici interrotti; device - dispositivi a caratteri e blocchi; special usata per i file speciali, come pipe e socket; core usata per i file core.
I colori possibili sono: black, gray, red, brightred, green, brightgreen, brown, yellow, blue, brightblue, magenta, brightmagenta, cyan, brightcyan, lightgray e white. Inoltre c'� una speciale parola chiave per lo sfondo trasparente. Essa � 'default'. Il 'default' pu� essere usato solo come colore di sfondo. Esempio:
[Colors] base_color=normal=white,default:marked=magenta,default
Queste sono le variabili che possono essere impostate nel file ~/.mc/ini:
I simboli chiave possibili sono:
f0 a f20 tasti funzione f0-f20 bs backspace home tasto inizio end tasto fine up tasto freccia in su down tasto freccia in gi� left tasto freccia a sinistra right tasto freccia a destra pgdn tasto pagina in gi� pgup tasto pagina in su insert tasto inserimento delete tasto cancellazione complete per fare il completamento
Per esempio, per definire il tasto di inserimento come escape + [ + O + p impostare il seguente nel file ini:
insert=\e[Op
Il tasto di completamento rappresenta le sequenze di escape usate per invocare il processo di completamento, invocato tramite M-tab, ma ridefinibile ad altri tasti per fare lo stesso lavoro (su quelle tastiere con tonnellate di simpatici tasti dappertutto).
/gg/share/mc/mc.hlp
/gg/share/mc/mc.ext
~/.mc/bindings
/gg/share/mc/mc.ini
/gg/share/mc/mc.lib
~/.mc/ini
/gg/share/mc/mc.hint
/gg/share/mc/mc.menu
~/.mc/menu
~/.mc/Tree
./.mc.menu
La pagina Web del Midnight Commander: http://www.ibiblio.org/mc/
Adam Tla/lka (atlka@sunrise.pg.gda.pl), alex@bcs.zp.ua (Alex I. Tkachenko), Antonio Palama, DOS port (palama@posso.dm.unipi.it), Erwin van Eijk (wabbit@corner.iaf.nl), Gerd Knorr (kraxel@cs.tu-berlin.de), Jean-Daniel Luiset (luiset@cih.hcuge.ch), Jon Stevens (root@dolphin.csudh.edu), Juan Francisco Grigera, port su piattaforma Win32 (j-grigera@usa.net), Juan Jose Ciarlante (jjciarla@raiz.uncu.edu.ar), Ilya Rybkin (rybkin@rouge.phys.lsu.edu), Marcelo Roccasalva (mfroccas@raiz.uncu.edu.ar), Massimo Fontanelli (MC8737@mclink.it), Sergey Ya. Korshunoff (root@seyko.msk.su), Thomas Pundt (pundtt@math.uni-muenster.de), Timur Bakeyev (timur@goff.comtat.kazan.su), Tomasz Cholewo (tjchol01@mecca.spd.louisville.edu), Torben Fjerdingstad (torben.fjerdingstad@uni-c.dk), Vadim Sinolitis (vvs@nsrd.npi.msu.su) e Wim Osterholt (wim@djo.wtm.tudelft.nl).
Se si vuole fare un rapporto di un problema nel programma, prego spedire un messaggio di posta a questo indirizzo: mc-devel@gnome.org.
Nel rapporto � necessario fornire una descrizione dettagliata del baco, la versione del programma (mc -v mostra quest'informazione), il sistema operativo su cui si sta facendo girare il programma e, se il programma va in crash, � gradita una traccia dello stack.